This invention relates generally to computer systems and specifically to systems and processes for providing a computer architecture for a centricity user environment.
Since the industrial revolution, it has become common for people to rely on machines for innumerable tasks. As the use of more complex machines becomes ever more widespread, the need increases for interaction between humans and machines to become more efficient, simple, consistent, intuitive, and flexible.
Traditionally, human-machine interfaces have taken a form specific to the purpose of the machine. A telephone, for example, includes a dial or keypad for selecting numbers and electro-acoustic transducers for converting between sound and electrical energy. An automobile includes various interface components for selecting the speed and direction of the automobile. A present-day computer provides a graphical user interface using the metaphor of a desktop.
Unfortunately, as the number of machines used in everyday tasks increases, the inefficiencies introduced by having machine-specific interfaces increase commensurably.
In the area of computers, the need for a user environment that is powerful, flexible, and easy to use is particularly acute. Early user environments were arcane and difficult to use by anyone other than highly-trained computer operators and programmers. Punched cards, for example, provided a user environment that was powerful for solving many problems but was beyond the reach of an unsophisticated user. More modern operating environments adopted familiar metaphors such as that of an office or a desktop, allowing less experienced users to intuitively navigate through the environment to operate the computer, and access information.
As the diversity of information types, and increasingly the need to distribute the access to this information has evolved, more modern operating environments such as the "World Wide Web" (or "Web") have grown in popularity. The Web is a collection of computer servers organized in a peer-to-peer structure in which each server bears an equal, rather than hierarchical, relation to each other server. The Web provides links that connect one server to another, and in general, access from a first server to a second server is provided only by links that are provided, on a predetermined basis, by a "page" supplied by the first server. In this environment, a page is a model for relationships among linked objects. The page model includes both information content such as text and graphics, as well as links to other pages. In the context of this environment, links are simply mechanisms for establishing a unidirectional relationship between two objects. Links known as universal resource locators (URLs) are pointers from a current Web page to another Web page or other location (such as an "FTP" site) provided either by the same server or by a different server. If information desired by a user of the Web environment is not provided on a page supplied by the first server, the user must search for links to other pages provided by the first server, or by a second server. Commonly, links to numerous additional servers are required in order to find a server that provides the desired information.
Although some Web servers include search engines for automating information searches, the Web environment does not lend itself directly to any organized and efficient mechanism for accessing information other than that created by the system administrator. Thus, information retrieval using the Web environment is inefficient, uncertain, and inconsistent.
Therefore, a need remains for a more efficient user environment that can be used across a wide array of devices and can be applied to a wide range of tasks. No systems are currently known that adequately meet such a need.